package ModelLayer;


/**
 * Write a description of class PersonContainer here.
 * 
 * @author (Gruppe 1) 
 * @version (17.12.2012)
 */
public class Kunde
{
    // instance variables - replace the example below with your own
    private int id;
    private String fnavn;
    private String enavn;
    private String adresse;
    private String email;
    private int postNr;
    private String by;
    private int telefonNr;
    private double rabat;
    private double konto;
    private double kredit;
   
    /**
     *Opretter en nye kunde og tilføjer denne kunde til kundebasen.
     *@param String fnavn - Fornavnet på kunden
     *@param String enavn - Efternavnet på kunden
     *@param String adresse - Adressen på kunden
     *@param String email - Kundens email
     *@param int postNr - Kundens postnummer
     *@param String by - Byen kunden bor i
     *@param int telefonNr - Kundens telefonNr
     *@param double rabat - Kundens rabat
     */
    public Kunde(int id, String fnavn, String enavn, String adresse, String email, int postNr, String by, int telefonNr, double rabat, double konto, double kredit)
    {
        this.id = id;
        this.fnavn = fnavn;
        this.enavn = enavn;
        this.adresse = adresse;
        this.email = email;
        this.postNr = postNr;
        this.by = by;
        this.telefonNr = telefonNr;
        this.rabat = rabat;
        this.konto = konto;
        this.kredit = kredit;
    }
    
    public double getKontoSaldo()
    {
        return konto;
    }
    
    public void setKontoSaldo()
    {
        this.konto = konto;
    }
    
    /**
     * Få kundens ID
     * 
     * @return int getId - Kundens id.
     */
    public int getId()
    {
        return id;
    }
    
    /**
     * Få kundens fornavn
     * 
     * @return String getFnavn - Kundens fornavn.
     */
    public String getFnavn()
    {
        return fnavn;      
    }
    
    /**
     * Få kundens efternavn
     * 
     * @return String getEnavn - Kundens efternavn.
     */
    public String getEnavn()
    {
        return enavn;
    }
    
    /**
     * Få kundens adresse
     * 
     * @return String getAdresse - Kundens adresse
     */
    public String getAdresse()
    {
        return adresse;
    }
    
    /**
     * Få kundens Email
     * 
     * @return String getEmail - Kundens Email
     */
    public String getEmail()
    {
        return email;
    }
    
    /**
     * Få kundens postnummer
     * 
     * @return int getPostNr - Kundens Postnummer.
     */
    public int getPostNr()
    {
        return postNr;
    }
    
    /**
     * Få kundens telefonnummer
     * 
     * @return int getTelefonNr - Kundens telefonnummer.
     */
    public int getTelefonNr()
    {
        return telefonNr;
    }
    
    /**
     * Find ud af kundens by
     * 
     * @return String getBy - Kundens by
     */
    public String getBy()
    {
        return by;
    }
    
    /**
     * Tilføj kundens fornavn
     * 
     * @param String fnavn - Kundens fornavn
     */
    public void setFnavn(String fnavn)
    {
        this.fnavn = fnavn;
    }
    
    /**
     * Tilføj kundens efternavn
     * 
     * @param String enavn - Kundens efternavn
     */
    public void setEnavn(String enavn)
    {
        this.enavn = enavn;
    }
    
    /**
     * Tilføj kundens adresse
     * 
     * @param String adresse - Kundens adresse
     */
    public void setAdresse(String adresse)
    {
        this.adresse = adresse;
    }
    
    /**
     * Tilføj kundens email
     * 
     * @param String email - Kundens email
     */
    public void setEmail(String email)
    {
        this.email = email;
    }
    
    /**
     * Tilføj kundens postnummer
     * 
     * @param int postNr - Kundens postnummer
     */
    public void setPostNr(int postNr)
    {
        this.postNr = postNr;
    }
    
    /**
     * Tilføj kundens by
     * 
     * @param String by - Kundens by
     */
    public void setBy(String By)
    {
        this.by = by;
    }
    
    /**
     * Tilføj kundens telefonnummer
     * 
     * @param int telefonNr - Kundens telefonnummer.
     */
    public void setTelefonNr(int telefonNr)
    {
        this.telefonNr = telefonNr;
    }
    
    /**
     * tilføj kundens rabat
     * 
     * @param double rabat - Kundens rabat
     */
    public void setRabat(double rabat)
    {
        this.rabat = rabat;
    }
    
    public double getRabat()
    {
        return rabat;
    }
    
    public void setKreditLoft()
    {
        this.kredit = kredit;
    }
    
    public double getKreditLoft()
    {
        return kredit;
    }
    
    /**
     * Opdatere kundens informatio
     * 
     *@param String fnavn - Fornavnet på kunden
     *@param String enavn - Efternavnet på kunden
     *@param String adresse - Adressen på kunden
     *@param String email - Kundens email
     *@param int postNr - Kundens postnummer
     *@param String by - Byen kunden bor i
     *@param int telefonNr - Kundens telefonNr
     *@param double rabat - Kundens rabat
     */
    public void updatePerson(int id, String fnavn, String enavn, String adresse, String email, int postNr, String by, int telefonNr, double rabat, double kredit)
    {
        this.id = id;
        this.fnavn = fnavn;
        this.enavn = enavn;
        this.adresse = adresse;
        this.email = email;
        this.postNr = postNr;
        this.by = by;
        this.telefonNr = telefonNr;
        this.rabat = rabat;
        this.kredit = kredit;
    } 
    
    /**
     * Print detaljer omkring kunden
     * 
     * @param String printDetails - Print detaljer
     */
    public String printDetails(){
            return           ("\n\nID: " + id
                            + "\n Fornavn:           " + fnavn
                            + "\n Efternavn:         " + enavn
                            + "\n Adresse:           " + adresse
                            + "\n Postnummer:        " + postNr
                            + "\n By:                " + by
                            + "\n Telefon nummer:    " + telefonNr
                            + "\n Rabat:             " + rabat
                            + "\n Kredit:            " + kredit
                            + "\n Konto:             " + konto
                            + "\n \n");
    }
}
